package com.meta.act.app.system.repository;

//import com.meta.framework.act.tenant.entity.TenantUser;

import com.meta.act.app.tenant.entity.TenantUser;
import com.meta.act.app.tenant.res.TenantUserVo;

import java.util.List;

/**
 * 租户与用户关联表
 * 
 * @author Simon
 * @email 1111111111111@qq.com
 * @date 2020-11-04 15:23:04
 */
public interface TenantUserRepository{

	/**
	 * insert tenantUser info
	 * @method      insertTenantUser
	 * @param       tenantUser:
	 * @return      void
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	int insertTenantUser(TenantUser tenantUser);

	/**
	 * batch insert tenantUser info
	 * @method      insertTenantUser
	 * @param       tenantUsers:
	 * @return      void
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	void batchInsertTenantUser(List<TenantUser> tenantUsers);

	/**
	 * update tenantUser info
	 * @method      updateTenantUser
	 * @param       tenantUser:
	 * @return      int
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	int updateTenantUser(TenantUser tenantUser);

	/**
	 * update tenantUser info By pk
	 * @method      updateTenantUserByPk
	 * @param       tenantUser:
	 * @return      int
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	int updateTenantUserByPk(TenantUser tenantUser);

	/**
	 * list tenantUser info
	 * @method      listTenantUser
	 * @param       tenantUser:
	 * @return      List<TenantUser>
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	List<TenantUser> listTenantUser(TenantUser tenantUser);

	List<TenantUserVo> listTenantUserInfo(TenantUser tenantUser);

	TenantUser getTenantUser(Long userId, Long tenantId);
}
